// --------------------------------------------------------------------------------------------------------------------
// <copyright file="InvalidCipherTextException.cs" company="Anton Frattaroli">
//   Copyright (c) Adam Tibi. All rights reserved.
// </copyright>
// <summary>
//   Defines the InvalidCipherTextException class.
// </summary>
// --------------------------------------------------------------------------------------------------------------------
namespace Lidocaine
{
    using System;
    using System.Collections.Generic;
    using System.Runtime.Serialization;
    using System.Text;
    
    /// <summary>
    /// Represents errors that occur when a text can't be decoded or the text is tampered 
    /// </summary>
    [Serializable]
    public class InvalidCipherTextException : Exception
    {
        /// <summary>
        /// Initializes a new instance of the InvalidCipherTextException class.
        /// </summary>
        public InvalidCipherTextException() : base()
        {
        }

        /// <summary>
        /// Initializes a new instance of the InvalidCipherTextException class.
        /// </summary>
        /// <param name="message">The error message.</param>
        public InvalidCipherTextException(string message) : base(message)
        {
        }

        /// <summary>
        /// Initializes a new instance of the InvalidCipherTextException class.
        /// </summary>
        /// <param name="message">The error message.</param>
        /// <param name="innerException">The error inner exception.</param>
        public InvalidCipherTextException(string message, Exception innerException) : base(message, innerException)
        {
        }

        /// <summary>
        /// Initializes a new instance of the InvalidCipherTextException class.
        /// </summary>
        /// <param name="serializationInfo">The SerializationInfo object.</param>
        /// <param name="streamingContext">The StreamingContext object.</param>
        protected InvalidCipherTextException(SerializationInfo serializationInfo, StreamingContext streamingContext) : base(serializationInfo, streamingContext)
        {
        }
    }
}
